import pandas as pd
import matplotlib.pyplot as plt

# 设置中文字体
plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
plt.rcParams['axes.unicode_minus'] = False

# 读取数据
df = pd.read_csv('c:/Users/86183/Desktop/新建文件夹/c.客户货运需求量.csv')

# 按货运量排序并取前20名
df_sorted = df.sort_values('净重', ascending=False).head(20)

# 创建条形图
plt.figure(figsize=(12, 8))
bars = plt.bar(df_sorted['客户'], df_sorted['净重'], color='skyblue')
plt.xlabel('客户名称')
plt.ylabel('货运量（吨）')
plt.title('6月客户货运需求量TOP20')
plt.xticks(rotation=45, ha='right')

# 添加数据标签
for bar in bars:
    height = bar.get_height()
    plt.text(bar.get_x() + bar.get_width()/2., height,
            f'{height:.1f}',
            ha='center', va='bottom')

# 调整布局并保存
plt.tight_layout()
plt.savefig('c:/Users/86183/Desktop/新建文件夹/客户货运需求量统计.png')
plt.show()